package com.flyco.modules.sms.model;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @Description: 优惠券发放方式
 * @Author: flyco
 * @Date:   2020-03-04
 * @Version: V1.0
 */
@Data
public class SmsCouponGrantModel {
	/**id*/
	private Long id;
	/**优惠券ID*/
	private Long couponId;
	/**获取类型：0->后台赠送；1->主动获取*/
	private Integer getType;
	/**0-待发放 1-发放中 2-暂停 3-结束发放*/
	private Integer grantStatus;
	/**领券分组：normal：默认领券,live：直播领券 ,third：三方领券*/
	private String grantGroup;
	/**领券地址，默认UUID，可修改*/
	private String grantUuid;
	/**是否对外展示，0：不展示，1：展示*/
	private Integer showFlag;
	/**仅限新用户标识*/
	private Integer newMemberFlag;
	/**生效时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date startTime;
	/**失效时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date endTime;
	/**过期类型：0:固定有效期 1:时长有效期*/
	private Integer expireType;
	/**过期天数*/
	private Integer expireDays;
	/**领取后冻结天数*/
	private Integer frozenDays;
	/**指定门店标识*/
	private Integer storeFlag;
	/**可用券导购级别，9:经理;5:店长;1:导购*/
	private Integer storePosition;
	/**创建人*/
	private String createBy;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date createTime;
	/**更新人*/
	private String updateBy;
	/**更新时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	private Date updateTime;

	/**优惠券关联门店*/
	private List<Long> storeIdList = new ArrayList<>();
}
